System and method for sequentially conducting independent data contexts using a mobile communications device

ABSTRACT

A mobile communications device includes logic operable to conduct a data context associated with a first application of the mobile communications device with a data service network. The mobile communications device also includes logic operable to release the data context associated with the first application and establish a data context associated with a second application of the mobile communications device with the data service network responsive to one of the user executing a hold function and the second application requesting that a data context be associated therewith. The mobile communications device further includes logic operable to reestablish the data context associated with the first application responsive to one of the user executing a resume function, the second application releasing the data context associated therewith, data transmission within the data context associated with the second application ceasing for a first predetermined time period and a second predetermined time period elapsing.

TECHNICAL FIELD OF THE APPLICATION

The present disclosure relates, in general, to wireless packet dataservice networks and, in particular, to a system and method forsequentially conducting independent data contexts using a mobilecommunications device operable to be disposed in the wireless packetdata service network.

BACKGROUND

It is becoming commonplace to use wireless packet data service networksfor effectuating data sessions with mobile communications devices. Forexample, mobile communications devices may be used to provide acontinually operable data service for wirelessly extending corporatedata and applications such as email and personal information managementto mobile users. Many of these mobile communications devices, however,are capable of supporting only one PDP context at a time. As such, auser desiring to take advantage of such a continually operable dataservice may not be able to use all of the functionality of the mobilecommunications device. Accordingly, a need has arisen for system andmethod for sequentially conducting independent PDP contexts using thewireless packet data service network via a mobile communications devicethat allows the user to experience not only the continually operabledata service functionality, but also, other data service functionalityof the mobile communications device.

SUMMARY

Disclosed herein are a system and method for sequentially conductingindependent PDP contexts within a wireless packet data service networkvia a mobile communications device that allows the user to experiencenot only a continually operable data service functionality, but also,other data service functionality of the mobile communications device.Specifically, the mobile communications device includes logic operableto conduct a data context associated with a first application betweenthe mobile communications device and a data service network. The mobilecommunications device also includes logic operable to release the datacontext associated with the first application and establish a datacontext associated with a second application of the mobilecommunications device responsive to one of the user executing a holdfunction and the second application requesting that a data context beassociated therewith.

In addition, the mobile communications device includes logic operable toreestablish the data context associated with the first applicationresponsive to one of the user executing a resume function, the secondapplication releasing the data context associated therewith, datatransmission within the data context associated with the secondapplication ceasing for a first predetermined time period and a secondpredetermined time period elapsing.

In one embodiment, the data context associated with the firstapplication of the mobile communications device may be a PDP context.Likewise, the data context associated with the second application of themobile communications device may be a PDP context. In anotherembodiment, the data service network may be a wireless packet dataservice network selected from one of a General Packet Radio Service(GPRS) network, an Enhanced Data Rates for Global System for MobileCommunications (GSM) Evolution (EDGE) network, a 3rd Generation (3G)network, an Integrated Digital Enhanced Network (IDEN), a Code DivisionMultiple Access (CDMA) network and a Universal Mobile TelecommunicationsSystem (UMTS) network.

In one embodiment, the mobile communications device may include logicoperable to prompt the user for acknowledgment prior to releasing thedata context associated with the first application. Likewise, the mobilecommunications device may include logic operable to prompt the user foracknowledgment prior to reestablishing the data context associated withthe first application.

In another embodiment, the first application may be a continuallyoperable data services application such as an email application, acalendering application or the like. In this embodiment, the secondapplication may be a non continually operable data services applicationsuch as a web browsing application.

In a further embodiment, the user executing a hold function may includeone of the user selecting an icon and the user selecting a menu itemfrom a user interface of the mobile communications device. Likewise, theuser executing a resume function may include one of the user selectingan icon and the user selecting a menu item from the user interface ofthe mobile communications device.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the features and advantages of thepresent method and mobile device, reference is now made to the detaileddescription along with the accompanying figures in which correspondingnumerals in the different figures refer to corresponding parts and inwhich:

FIG. 1 depicts an exemplary network environment including a wirelesspacket data service network wherein an embodiment of the present methodmay be practiced;

FIG. 2 depicts a block diagram of a mobile communications deviceaccording to one embodiment of the present disclosure;

FIG. 3 depicts a software architectural view of a mobile communicationsdevice according to one embodiment of the present disclosure;

FIG. 4 depicts additional details of an exemplary wireless packet dataservice network operable with a mobile communications device inaccordance with an embodiment of the present disclosure; and

FIG. 5 depicts a flowchart of an embodiment for sequentially conductingindependent PDP contexts using the wireless packet data service networkoperable with a mobile communications device in accordance with anembodiment of the present disclosure.

DETAILED DESCRIPTION OF THE DRAWINGS

While various embodiments of a mobile communications device operatingwithin a network system are discussed in detail below, it should beappreciated that the present disclosure provides many applicableinventive concepts which can be embodied in a wide variety of specificcontexts. The specific embodiments discussed herein are merelyillustrative of specific ways to use the mobile communications devicewithin the network system, and do not delimit the scope of the presentdisclosure.

Referring now to the drawings, and more particularly to FIG. 1, depictedtherein is an exemplary network environment 10 including a wirelesspacket data service network 12 wherein an embodiment of the presentmethod may be practiced. An enterprise network 14 for serving aplurality of corporate users, which may be a packet-switched network,can include one or more geographic sites and be organized as a localarea network (LAN), a wide area network (WAN), a metropolitan areanetwork (MAN) or the like. A number of application servers 16-1 through16-N disposed as part of the enterprise network 14 are operable toprovide or effectuate a host of internal and external services such asInternet access, corporate data access, information management and thelike as well as certain continually operable data services such asemail, video mail, messaging, calendaring, scheduling and the like.Accordingly, a diverse array of personal information appliances 18 suchas desktop computers, laptop computers, palmtop computers or the likemay be operably networked to one or more of the application servers16-i, i=1, 2, . . . ,N, with respect to the services supported in theenterprise network 14.

Additionally, a remote services server 20 may be interfaced with theenterprise network 14 for enabling a corporate user to access oreffectuate any of the services from a remote location using a suitablemobile communications device (MCD) 22. A secure communication link withend-to-end encryption may be established that is mediated through anexternal IP network, i.e., a public packet-switched network such as theInternet 24, as well as the wireless packet data service network 12operable with MCD 22 via suitable wireless network infrastructure thatincludes a base station 26. In one embodiment, a trusted relay network28 may be disposed between the Internet 24 and the infrastructure ofwireless packet data service network 12. By way of example, MCD 22 maybe a data-enabled handheld device capable of receiving and sendingmessages, web browsing, interfacing with corporate application serversand the like.

For purposes of the present disclosure, the wireless packet data servicenetwork 12 may be implemented in any known or heretofore unknown mobilecommunications technologies and network protocols, as long as apacket-switched data service is available therein for transmittingpacketized information. For instance, the wireless packet data servicenetwork 12 may be comprised of a General Packet Radio Service (GPRS)network that provides a packet radio access for mobile devices using thecellular infrastructure of a Global System for Mobile Communications(GSM)-based carrier network. In other implementations, the wirelesspacket data service network 12 may comprise an Enhanced Data Rates forGSM Evolution (EDGE) network, an Integrated Digital Enhanced Network(IDEN), a Code Division Multiple Access (CDMA) network, a UniversalMobile Telecommunications System (UMTS) network, or any 3rd Generation(3G) network. As will be seen hereinbelow, the embodiments of thepresent disclosure for sequentially conducting independent data contextsusing a MCD will be described regardless of any particular wirelessnetwork implementation.

FIG. 2 depicts a block diagram of a mobile communications device thatsupports continually operable data service and that is generallydesignated 30. It will be recognized by those skilled in the art uponreference hereto that although an embodiment of MCD 30 may comprise anarrangement similar to one shown in FIG. 2, there can be any number ofvariations and modifications, in hardware, software or firmware, withrespect to the various modules depicted. Accordingly, the arrangement ofFIG. 2 should be taken as illustrative rather than limiting with respectto the embodiments of the present disclosure. A microprocessor 32providing for the overall control of MCD 30 is operably coupled to acommunication subsystem 34 which includes a receiver 36 and transmitter38 as well as associated components such as one or more local oscillator(LO) modules 40 and a processing module such as a digital signalprocessor (DSP) 42. As will be apparent to those skilled in the field ofcommunications, the particular design of the communication module 34 maybe dependent upon the communications network with which the mobiledevice is intended to operate.

In one embodiment, the communication module 34 is operable with bothvoice and data communications. Regardless of the particular design,however, signals received by antenna 44 through base station 26 areprovided to receiver 36, which may perform such common receiverfunctions as signal amplification, frequency down conversion, filtering,channel selection, analog-to-digital (A/D) conversion, and the like.Similarly, signals to be transmitted are processed, including modulationand encoding, for example, by DSP 42, and provided to transmitter 44 fordigital-to-analog (D/A) conversion, frequency up conversion, filtering,amplification and transmission over the air-radio interface via antenna46.

Microprocessor 32 also interfaces with further device subsystems such asauxiliary input/output (I/O) 48, serial port 50, display 52, keyboard54, speaker 56, microphone 58, random access memory (RAM) 60, ashort-range communications subsystem 62 and any other device subsystemsgenerally labeled as reference numeral 64. To control access, aSubscriber Identity Module (SIM) or Removable user Identity Module(RUIM) interface 66 is also provided in communication with themicroprocessor 32. In one implementation, SIM/RUIM interface 66 isoperable with a SIM/RUIM card having a number of key configurations 68and other information 70 such as identification and subscriber-relateddata.

Operating system software and software associated with transport stack72 may be embodied in a persistent storage module (i.e., non-volatilestorage) such as Flash memory 74. In one implementation, Flash memory 74may be segregated into different areas, e.g., storage areas for computerprograms 76, device states 78, address book 80, other personalinformation manager (PIM) data 82 and other data storage areas generallylabeled as reference numeral 84. Additionally, a data context logicmodule 86 is provided for regulating and scheduling application accessto communications sessions with wireless packet data service network 12according to the teachings set forth herein.

FIG. 3 depicts a software architectural view of a mobile communicationsdevice operable according to one embodiment for regulating andscheduling application access to communications sessions with wirelesspacket data service network 12 regardless of the manufacturer of the MCDor the wireless service provider. A multi-layer transport stack (TS) 100is operable to provide a generic data transport protocol for any type ofcorporate data, including email, via a reliable, secure and seamlesscontinuous connection to a wireless packet data service network. Asillustrated in the embodiment of FIG. 3, an integration layer 102 isoperable as an interface between the MCD's radio layer 104 and thetransport stack 100. Likewise, another integration layer 106 is providedfor interfacing between the transport stack 100 and the userapplications 108 supported on the MCD, e.g., email 110,calendar/scheduler 112, contact management 114 and web browser 116.Although not specifically shown, the transport stack 100 may also beinterfaced with the MCD's operating system. In another implementation,the transport stack 100 may be provided as part of a data communicationsclient module operable as a host-independent virtual machine on a mobiledevice.

The bottom layer (Layer 1) of the transport stack 100 is operable as aninterface to the wireless network's packet layer. Layer 1 handles basicservice coordination within the exemplary network environment 10 shownin FIG. 1. For example, when an MCD roams from one carrier network toanother, Layer 1 verifies that the packets are relayed to theappropriate wireless network and that any packets that are pending fromthe previous network are rerouted to the current network. The top layer(Layer 4) exposes various application interfaces to the servicessupported on the MCD. The remaining two layers, Layer 2 and Layer 3, areresponsible for datagram segmentation/reassembly and security,compression and routing, respectively.

FIG. 3 also depicts a data context logic module 118 provided as part ofthe MCD's software environment that is disposed in operablecommunication with the transport stack 100 and radio layer 104 as wellas the OS environment for regulating and scheduling application accessto communications sessions with wireless packet data service network 12.In one implementation, data context logic module 118 is operable torelease the data context associated with a first application, forexample, a continually operable data services application such as email110 or calendar 112 and establish a data context associated with asecond application, such as browser 116, responsive to the user of theMCD executing a hold function by, for example, launching a holdapplication operably associated with the first application by selectingan icon or menu item from the user interface 52 of the MCD.

Data context logic module 118 is also operable to release the datacontext associated with the first application and establish a datacontext associated with the second application, responsive to a requestfor a data context by the second application. For example, the user mayattempt to launch browser application 116 while email application 110holds the only data context or the last data context available betweenthe MCD and the network 12. In t his case, data context logic module 118may prompt the user to acknowledge that email application 110 shouldrelease its data context or context logic module 118 may automaticallycause the release of the data context of email application 110. Ineither case, the data context for browser application 116 can then beestablished.

In the present example, since email application 110 is a continuallyoperable data services application, it is desirable that the datacontext for email application 110 be reestablished as quickly aspossible. As such, data context logic module 118 is operable toreestablish the data context associated with the first applicationresponsive to the user executing a resume function by, for example,launching a resume application operably associated with the firstapplication by selecting an icon or menu item from the user interface 52of the MCD. Data context logic module 118 then releases the data contextfor browser application 116 and reestablishes the data context for emailapplication 110.

Even if the user does not initiate the resume function, in oneimplementation, data context logic module 118 will automaticallyreestablish the data context for email application 110 responsive tobrowser application 116 releasing its data context by, for example, theuser shutting down browser application 116 or a time out associated withbrowser application 116. Likewise, in one implementation, data contextlogic module 118 will reestablish the data context for email application110 responsive to determining that data transmissions within the datacontext associated with browser application 116 have ceased for a firstpredetermined time period such as for several minutes. In this case,data context logic module 118 may prompt the user to acknowledge thatbrowser application 116 should release its data context or simplyautomatically cause the release of the data context of browserapplication 116.

Alternatively or additionally, in one implementation, data context logicmodule 118 will reestablish the data context for email application 110responsive to determining that a second predetermined time period suchas ten to twenty minutes has elapsed. In this case, data context logicmodule 118 may prompt the user to acknowledge that browser application116 should release its data context or simply automatically cause therelease of the data context of browser application 116 andreestablishment of the data context of email application 110. As such,data context logic module 118 is operable to regulate and scheduleapplication access to communications sessions while substantiallymaintaining the data context for a continually operable data servicesapplication such as email application 110.

FIG. 4 depicts additional details of an exemplary wireless packet dataservice network operable with a mobile communications device inaccordance with an embodiment. As illustrated, reference numeral 130refers to a GPRS network operable as the wireless packet data servicenetwork with respect to MCD 30 that is provided with a number ofdata-centric user applications 138 such as, e.g., web browsing, email,multimedia, File Transfer Protocol or FTP, telnet and the like. Basestation 26 serves MCD 30 via the air interface using applicable radiolayer protocols.

GPRS uses a packet-switching technique to transfer both high-speed andlow-speed data and signaling in an efficient manner over GSM radionetworks. Packet switching means that GPRS radio resources are used onlywhen users are actually sending or receiving data. Rather thandedicating a radio channel to a mobile data user, e.g., MCD 30, for afixed period of time, the available radio channels can be concurrentlyshared between several users. Therefore, GPRS is designed to supportfrom intermittent and bursty data transfers (e.g., web browsing) tooccasional transmission of large volumes of data (e.g., FTP). Allocationof GPRS radio channels can be flexible: from 1 to 8 radio interfacetimeslots can be allocated per one Time Division Multiple Access (TDMA)frame. Typically, timeslots are shared by the active users, and uplinksand downlinks are allocated separately. Various radio channel codingschemes are available to allow a range of data bit transfer rates.

Two additional network nodes are provided within a GSM network in orderto implement a packet-switched data transfer service. A Serving GPRSSupport Node (SGSN) 134, which is coupled to a Home Location Register(HLR) 132 and disposed at the same hierarchical level as a MobileSwitching Center (MSC) of the circuit-switched cellular network, isoperably coupled to base station 26 and keeps track of the location of aGPRS user such as the user of MCD 30. Further, SGSN 134 is responsiblefor performing security functions and handling access control withrespect to MCD 30. A Gateway GPRS Support Node (GGSN) 136 providesinterworking with the external packet-switched IP network 24, and isoperably coupled to one or more SGSNs, e.g., SGSN 134, via an IP-basedGPRS backbone network.

In order to access the packet data service, MCD 30 makes its presenceknown to the network by performing what is known as a GPRS Attach.Thereafter, to send and receive packet data, MCD 30 activates the packetdata address that it wants to use. This operation renders MCD 30“visible” in the corresponding GGSN, and interworking with external datanetworks can then begin. User data is transferred transparently betweenMCD 30 and the external data networks with a method known asencapsulation and tunneling wherein data packets are equipped withGPRS-specific protocol information and transferred transparently betweenMCD 30 and GGSN 136 using, for example, a Packet Data Protocol (PDP)context between MCD 30 and GPRS network 130.

FIG. 5 depicts a flowchart of an embodiment for establishing sequentialPDP contexts between a MCD and a network using, for example, an MCD thatonly supports a single PDP context. Those of ordinary skill in the art,however, should recognize that the present disclosure is not onlyapplicable to single PDP context MCDs but also to any MCD/network systemwherein the two required PDP contexts cannot simultaneously be activeincluding, but not limited to, a MCD currently conducting its maximumnumber of PDP contexts, a network capable of supporting only one PDPcontext with a given MCD or the like.

Specifically, as detailed in method 150 of FIG. 5, whenever a datacontext for a continually operable data services application, the firstapplication, is active (block 152), the data context logic module isoperable to identify other operations of the MCD that request a datacontext. For example, the data context logic module determines whetherthe user of the MCD has executed a hold function (block 154). If theuser has executed the hold function, the data context associated withthe first application is released (block 156) and the first applicationmay, for example, operate in the background. After the data contextassociated with the first application has been released, a data contextassociated with a second application may be established (block 158).Alternatively, if the user of the MCD has not executed the hold function(block 154) but another application has requested a data context (block160), then the data context associated with the first application isagain released (block 156) and a data context associated with a secondapplication may be established (block 158). If the user of the MCD hasnot executed a hold function (block 154) and no other application hasrequested a data context (block 160), then the data context logic modulecontinues to identify whether other operations of the MCD are requestinga data context.

Once a data context associated with the second application has beenestablished, as the first application is a continually operable dataservices application, the data context logic module now operates todetermine when to reestablish the data context for the firstapplication. In this regard, the data context logic module determineswhether the user of the MCD has executed the resume function (block162). If the user has executed the resume function, the data contextassociated with the second application is released (block 164) and adata context associated with the first application may be reestablished(block 166). Alternatively, if the user of the MCD has not executed aresume function (block 162) but the second application has released itsdata context (block 168), then a data context associated with the firstapplication may be reestablished (block 166).

If the user has not executed the resume function (block 162) and thesecond application has not released its data context (block 168), thenthe data context logic module determines whether there are datatransmissions within the data context associated with the secondapplication (block 170). If there is no data transmission for a specifictime period, then the data context associated with the secondapplication is released (block 164) and a data context associated withthe first application may be reestablished (block 166). Additionally,even if the user has not executed the resume function (block 162), thesecond application has not released its data context (block 168) anddata transmissions within the data context associated with the secondapplication are occurring (block 170), the data context logic moduledetermines whether a specific time period has elapsed (block 172). Ifthis specific time period has past, the data context associated with thesecond application is released (block 164) and a data context associatedwith the first application may be reestablished (block 166). If thespecific time period has not elapsed (block 172), the data context logicmodule continues to operate to determine when to reestablish the datacontext for the first application.

As stated above, in some implementations, prior to releasing a givendata context, the user of the MCD may be prompted to acknowledge thatsuch data context should be released. Alternatively, the data contextlogic module may automatically cause the release of the given datacontext based upon to above-described criteria.

While this disclosure has described a mobile communications deviceoperating within a network system with reference to illustrativeembodiments, this description is not intended to be construed in alimiting sense. Various modifications and combinations of theillustrative embodiments as well as other embodiments, will be apparentto persons skilled in the art upon reference to the description. It is,therefore, intended that the appended claims encompass any suchmodifications or embodiments.

1. A method for providing a substantially continually operable packetdata context with a mobile communications device comprising: conductinga first packet data protocol (PDP) context associated with a firstsubstantially continually operable data services application of themobile communications device; releasing the first PDP context associatedwith the first substantially continually operable data servicesapplication and establishing a second PDP context associated with asecond application of the mobile communications device responsive to auser's execution of a hold function; and releasing the second PDPcontext and reestablishing the first PDP context associated with thefirst substantially continually operable data services applicationresponsive to the user of the mobile communications device executing aresume function.
 2. The method as recited in claim 1 wherein the PDPcontexts associated with the first and second applications occur withina wireless packet data service network.
 3. The method as recited inclaim 2 wherein the wireless packet data service network furthercomprises one of a General Packet Radio Service (GPRS) network, anEnhanced Data Rates for Global System for Mobile Communications (GSM)Evolution (EDGE) network, a 3rd Generation (3G) network, an IntegratedDigital Enhanced Network (IDEN), a Code Division Multiple Access networkand a Universal Mobile Telecommunications System (UMTS) network.
 4. Themethod as recited in claim 1 further comprising prompting the user foracknowledgment prior to releasing the PDP context associated with thefirst application.
 5. The method as recited in claim 1 furthercomprising prompting the user for acknowledgment prior to reestablishingthe PDP context associated with the first application.
 6. The method asrecited in claim 1 wherein the first application is a continuallyoperable data services application.
 7. The method as recited in claim 1wherein the first application further comprises at least one of an emailapplication and a calendering application.
 8. The method as recited inclaim 1 wherein the second application is not a continually operabledata services application.
 9. The method as recited in claim 1 whereinthe second application is a web browsing application.
 10. The method asrecited in claim 1 wherein the user executing a hold function furthercomprises one of the user selecting an icon and the user selecting amenu item from a user interface of the mobile communications device. 11.The method as recited in claim 1 wherein the user executing a resumefunction further comprises one of the user selecting an icon and theuser selecting a menu item from a user interface of the mobilecommunications device.
 12. A mobile communications device comprising: aprocessor operable to: conduct a first packet data protocol (PDP)context associated with a first substantially continually operable dataservices application of the mobile communications device with a dataservice network; release the first PDP context associated with the firstsubstantially continually operable data services application andestablish a second PDP context associated with a second application ofthe mobile communications device with the data service networkresponsive to a user's execution of a hold function; and release thesecond PDP context and reestablish the first PDP context associated withthe first substantially continually operable data services applicationresponsive to the user of the mobile communications device executing aresume function.
 13. The mobile communications device as recited inclaim 12 wherein the data service network further comprises a wirelesspacket data service network.
 14. The mobile communications device asrecited in claim 13 wherein the wireless packet data service networkfurther comprises one of a General Packet Radio Service (GPRS) network,an Enhanced Data Rates for Global System for Mobile Communications (GSM)Evolution (EDGE) network, a 3rd Generation (3G) network, an IntegratedDigital Enhanced Network (IDEN), a Code Division Multiple Access networkand a Universal Mobile Telecommunications System (UMTS) network.
 15. Themobile communications device as recited in claim 12 wherein theprocessor is operable to prompt the user for acknowledgment prior toreleasing the PDP context associated with the first application.
 16. Themobile communications device as recited in claim 12 wherein theprocessor is operable to prompt the user for acknowledgment prior toreestablishing the PDP context associated with the first application.17. The mobile communications device as recited in claim 12 wherein thefirst application is a continually operable data services application.18. The mobile communications device as recited in claim 12 wherein thefirst application further comprises at least one of an email applicationand a calendering application.
 19. The mobile communications device asrecited in claim 12 wherein the second application is not a continuallyoperable data services application.
 20. The mobile communications deviceas recited in claim 12 wherein the second application is a web browsingapplication.
 21. The mobile communications device as recited in claim 12wherein the user executing a hold function further comprises one of theuser selecting an icon and the user selecting a menu item from a userinterface of the mobile communications device.
 22. The mobilecommunications device as recited in claim 12 wherein the user executinga resume function further comprises one of the user selecting an iconand the user selecting a menu item from a user interface of the mobilecommunications device.
 23. A mobile communications device comprising: aprocessor operable to: conduct a first packet data protocol (PDP)context associated with a first substantially continually operableelectronic mail application of the mobile communications device with adata service network; release the first PDP context associated with thefirst substantially continually operable electronic mail application andestablish a second PDP context associated with a non continuallyoperable electronic mail application of the mobile communications devicewith the data service network responsive to a user's execution of a holdfunction; and release the second PDP context and reestablish the firstPDP context associated with the first substantially continually operableelectronic mail application responsive to the user's execution of aresume function.